## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
#PMIPv6 Implementation by CHY

def build(bld):
    obj = bld.create_ns3_module('pmip6', ['network', 'internet'])
    obj.source = [
        'model/binding-cache.cc',
        'model/binding-update-list.cc',
		'model/ipv6-mobility.cc',
		'model/ipv6-mobility-demux.cc',
		'model/ipv6-mobility-header.cc',
		'model/ipv6-mobility-l4-protocol.cc',
		'model/ipv6-mobility-option.cc',
		'model/ipv6-mobility-option-demux.cc',
		'model/ipv6-mobility-option-header.cc',
		'model/ipv6-static-source-routing.cc',
		'model/ipv6-tunnel-l4-protocol.cc',
		'model/pmipv6-agent.cc',
		'model/pmipv6-mag.cc',
		'model/pmipv6-lma.cc',
		'model/pmipv6-mag-notifier.cc',
		'model/pmipv6-prefix-pool.cc',
		'model/pmipv6-profile.cc',
		'model/tunnel-net-device.cc',
		'model/unicast-radvd.cc',
		'model/unicast-radvd-interface.cc',
		'model/identifier.cc',
        'helper/pmip6-helper.cc',
		'helper/ipv6-static-source-routing-helper.cc',
        ]
    headers = bld.new_task_gen('ns3header')
    headers.module = 'pmip6'
    headers.source = [
        'model/binding-cache.h',
        'model/binding-update-list.h',
		'model/ipv6-mobility.h',
		'model/ipv6-mobility-demux.h',
		'model/ipv6-mobility-header.h',
		'model/ipv6-mobility-l4-protocol.h',
		'model/ipv6-mobility-option.h',
		'model/ipv6-mobility-option-demux.h',
		'model/ipv6-mobility-option-header.h',
		'model/ipv6-static-source-routing.h',
		'model/ipv6-tunnel-l4-protocol.h',
		'model/pmipv6-agent.h',
		'model/pmipv6-mag.h',
		'model/pmipv6-lma.h',
		'model/pmipv6-mag-notifier.h',
		'model/pmipv6-prefix-pool.h',
		'model/pmipv6-profile.h',
		'model/tunnel-net-device.h',
		'model/unicast-radvd.h',
		'model/unicast-radvd-interface.h',
		'model/identifier.h',
        'helper/pmip6-helper.h',
		'helper/ipv6-static-source-routing-helper.h',
        ]

    if bld.env['ENABLE_EXAMPLES']:
        bld.add_subdirs('examples')

#    bld.ns3_python_bindings()
